473,605 Members | 2,652 Online
Bytes | Software Development & Data Engineering Community
+ Post

Home Posts Topics Members FAQ

Vista / XP msvcrt.dll error

I have a VC++ / .NET 2.0 solution built using VS 2005 SP1 under XP.
Everything has been working well there over the past year. I have recently
starting porting the app to Windows Vista (since it currently will not
execute properly there).

I installed VS 2005 SP1 and the hot fix SP for Vista on my Windows Vista
system and have rebuilt the entire solution there with everything working
well. This solution also builds a setup package that includes all
dependecies -- i.e. MS VC80 vcrt merge modules, etc.). The setup package
works perfectly and the software now runs under Vista. Now, when I go back
and install the app under Windows XP I get the following error when I start
up the exe after installation:

The procedure entry point _except_handler 4_common could not be located in
the dynamic link library msvcrt.dll

This is frustrating since if I go back and build the identicle solution
under VS2005 SP1 under Windows XP the package installs and works great (but
then no longer works under Vista). What am I missing?

Thanks, -David
Mar 2 '07 #1
18 81268
Hi David,

Based on my knowledge, _except_handler *(* can be 2, 3, 4) is an internal
exception handler of Microsoft VC++ compiler.

I have used windbg to dump the available handlers in msvcrt.dll on Win2003,
below is the result:
0:000x msvcrt!_except_ handler*
77bc6bbc msvcrt!__except _handler2 (void)
77bc6c74 msvcrt!_except_ handler3 (void)

So the _except_handler 4_common handler is not present in msvcrt.dll on
Win2003 machine. I assume it is the same as WinXP.(I will give a check on
WinXP machine tommorrow after going back to office)

By testing it Vista reveals, the Vista version of msvcrt.dll contains
_except_handler 4_common symbol.

I then performed search in all the available Microsoft database and found
some records. Most of the records are related with certain Vista tools
being used on WinXP machine, which will generate the error your pasted.

I am not sure if this is a known issue yet, I will try to contact VC++ team
to ask for the best practise for this issue.

Thanks.

Best regards,
Jeffrey Tan
Microsoft Online Community Support
=============== =============== =============== =====
Get notification to my posts through email? Please refer to
http://msdn.microsoft.com/subscripti...ult.aspx#notif
ications.

Note: The MSDN Managed Newsgroup support offering is for non-urgent issues
where an initial response from the community or a Microsoft Support
Engineer within 1 business day is acceptable. Please note that each follow
up response may take approximately 2 business days as the support
professional working with you may need further investigation to reach the
most efficient resolution. The offering is not appropriate for situations
that require urgent, real-time or phone-based interactions or complex
project analysis and dump analysis issues. Issues of this nature are best
handled working with a dedicated Microsoft Support Engineer by contacting
Microsoft Customer Support Services (CSS) at
http://msdn.microsoft.com/subscripti...t/default.aspx.
=============== =============== =============== =====
This posting is provided "AS IS" with no warranties, and confers no rights.

Mar 5 '07 #2
Thanks Jeffrey, I'll wait to see what you come up with because at this point
I am completely stumped as to how to resolve this issue. It's particularly
confusing since as I said, the source code/solution are identical under
VS2005 sp1, but they are obviously compiled very differently based on whether
your development system is running under Vista versus XP.

Best regards,
David

Mar 5 '07 #3
Hi David,

Sorry for letting you wait.

Yes, they confirmed that only CRT8 version of msvcrt.dll contains the
_except_handler 4_common function. To use it, you need to install the CRT8
redist on XP:
http://www.microsoft.com/downloads/d...BEE-A3F9-4C13-
9C99-220B62A191EE&di splaylang=en

However, they thought that non-Windows developers (third parties as well as
MS non-Windows developers) are never supposed to use system32's msvcrt.dll.
That's only for Windows components. We believe you should be using
msvcr80.dll followed with VS2005.

To find out why your application is connecting to system32's msvcrt.dll,
you could use depends.exe to check just which binary is trying to access
msvcrt.dll. Or enable loader snaps and look at the output in the debugger.

I will wait for your further feedback, thanks.

Best regards,
Jeffrey Tan
Microsoft Online Community Support
=============== =============== =============== =====
Get notification to my posts through email? Please refer to
http://msdn.microsoft.com/subscripti...ult.aspx#notif
ications.

Note: The MSDN Managed Newsgroup support offering is for non-urgent issues
where an initial response from the community or a Microsoft Support
Engineer within 1 business day is acceptable. Please note that each follow
up response may take approximately 2 business days as the support
professional working with you may need further investigation to reach the
most efficient resolution. The offering is not appropriate for situations
that require urgent, real-time or phone-based interactions or complex
project analysis and dump analysis issues. Issues of this nature are best
handled working with a dedicated Microsoft Support Engineer by contacting
Microsoft Customer Support Services (CSS) at
http://msdn.microsoft.com/subscripti...t/default.aspx.
=============== =============== =============== =====
This posting is provided "AS IS" with no warranties, and confers no rights.

Mar 6 '07 #4
I already ran the "vcredist_x86.e xe" code to make sure I had the most recent
msvcrt.dll installed, but still encountered the problem. Additionally, one
of the XP systems I am testing on (and encountering the problem) has VS 2005
w/ SP1 already installed, which from what I can understand would also ensure
the latest versions of runtimes being installed. I will try to install again
tomorrow and also run depends.exe as you suggest to see if I can provide any
other info. Thanks. -David

Mar 6 '07 #5
Hi David,

Thanks for your feedback!

Yes, I have checked this with several VC++ developers. Based on their
feedback, unless you've done something really strange, VC2005 will not
create binaries with a dependency on Vista's msvcrt.dll. VC2005 will create
binaries with a dependency on msvcr80.dll. vcredist_x86.ex e only installs
msvcr80.dll, not msvcrt.dll.

The problem is not with the binary built with VC2005. The problem is with
some other binary on the your problematic machine. Something else has been
copied from a Vista machine to the problematic machine. Use depends.exe to
find out what DLL is causing a dependency on the Vista version of
msvcrt.dll.

Another developer also confirmed:
"Msvcrt.dll is an OS binary. It looks like your customer somehow compiles
against Vista msvcrt.lib. It is not a supported scenario."

I will wait for your further findings with depends.exe. Thanks.

Best regards,
Jeffrey Tan
Microsoft Online Community Support
=============== =============== =============== =====
Get notification to my posts through email? Please refer to
http://msdn.microsoft.com/subscripti...ult.aspx#notif
ications.

Note: The MSDN Managed Newsgroup support offering is for non-urgent issues
where an initial response from the community or a Microsoft Support
Engineer within 1 business day is acceptable. Please note that each follow
up response may take approximately 2 business days as the support
professional working with you may need further investigation to reach the
most efficient resolution. The offering is not appropriate for situations
that require urgent, real-time or phone-based interactions or complex
project analysis and dump analysis issues. Issues of this nature are best
handled working with a dedicated Microsoft Support Engineer by contacting
Microsoft Customer Support Services (CSS) at
http://msdn.microsoft.com/subscripti...t/default.aspx.
=============== =============== =============== =====
This posting is provided "AS IS" with no warranties, and confers no rights.

Mar 7 '07 #6
"Msvcrt.dll is an OS binary. It looks like your customer somehow compiles
against Vista msvcrt.lib. It is not a supported scenario."
Is Vista msvcrt.lib even publicly available?
Mar 7 '07 #7
JW- [Wed, 07 Mar 2007 19:20:20 +0900]:
>Is Vista msvcrt.lib even publicly available?
Apps/code made with vs6/vc (and prior) use the
"OS binary" msvcrt.dll. vs6/vc used msvcrt.lib
as the import lib. It never used to be the
"OS binary". Lots of apps are made with vs6/vc.
Even today, quite a few (100s of 000s) prefer
vs6 as a dev platform over the newer ones.
No, one doesn't need a "Vista msvcrt.lib"; they
are all the same (as far as it needs to be),
otherwise none of those vs6/vc (and prior) apps
would run on Vista. They do.

--
40th Floor - Software @ http://40th.com/
iplay.40th.com iPlay advanced audio player
zircon.40th.com Zircon music player
Mar 7 '07 #8

<he*@40th.comwr ote in message
news:eH******** ******@TK2MSFTN GP03.phx.gbl...
JW- [Wed, 07 Mar 2007 19:20:20 +0900]:
Is Vista msvcrt.lib even publicly available?

Apps/code made with vs6/vc (and prior) use the
"OS binary" msvcrt.dll. vs6/vc used msvcrt.lib
as the import lib. It never used to be the
"OS binary". Lots of apps are made with vs6/vc.
Even today, quite a few (100s of 000s) prefer
vs6 as a dev platform over the newer ones.
No, one doesn't need a "Vista msvcrt.lib"; they
are all the same (as far as it needs to be),
otherwise none of those vs6/vc (and prior) apps
would run on Vista. They do.
The older msvcrt.lib would have no import for the suffix 4 exception handler
function, because it was introduced with vista.
>
--
40th Floor - Software @ http://40th.com/
iplay.40th.com iPlay advanced audio player
zircon.40th.com Zircon music player

Mar 9 '07 #9
BV [Fri, 9 Mar 2007 14:20:22 -0600]:
>The older msvcrt.lib would have no import for the suffix 4 exception handler
function, because it was introduced with vista.
I've made import libraries in my time from
nothing but DLL files, back around the omf-
coff switch over. If someone wanted to make
an import library for some DLL, I'd assume he
still could. Most files today dwarf the RTL
so I'd sooner link static than do that (for
small files, I use the vc6 import lib).

07 02 18 23:23 5,632 zetup.exe

Made with vs8/link8, ref'ing msvcrt.dll.
File made/linked with the vs8 static lib:

07 03 09 14:38 50,176 zetup.exe

(Like I said, simple, so only a little RTL
got linked; no reference to any RTL DLL.)

Manifests turn out to be pretty ugly (hack)
so I go out of my way to avoid that mess.

--
40th Floor - Software @ http://40th.com/
iplay.40th.com iPlay advanced audio player
zircon.40th.com Zircon music player
Mar 9 '07 #10

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

1
9474
by: Kay | last post by:
I already specified to ignore specific library: MSVCPRT.lib MSVCRT.lib LIBC.lib MSVCRTD.lib LIBCD.lib command line is like: /INCREMENTAL /NOLOGO /DLL /NODEFAULTLIB:"MSVCPRT.lib MSVCRT.lib LIBC.lib MSVCRTD.lib LIBCD.lib" but I am still getting conflict linking problems. But if I do specify /NODEFAULTLIB, I'll get anther bunch of linking errors. Anybody knows why? thanks,
0
1445
by: bluter | last post by:
I have a problem with some VC++ (v5 sp3 compiled in debug mode) server component which perfrom Data Acces. These have been in production on NT4.0 and w2k. However when we try to use them on Server 2003 we only get partial functionality. So far we have noticed that when the components are returning large set of data that they fail. The following errors are entered in the Event Log and point to msvcrt.dll and oleaut32.dll. In this...
1
1704
by: =?Utf-8?B?a2FybHJlbnR6aGVpbWVy?= | last post by:
When attempting to install Microsoft Office 2003 Professional Edition onto Windows Vista, an error message occurs stating that elevation is required to install. It is on an Acer laptop if that matters and their is more than enough room to run it. Any help or advice is greatly appreciated. Thanks.
0
1846
by: Accessed | last post by:
"(MSSQLSERVER) service is marked as an interactive service. However, the system is configured to not allow interactive services" This problems may solve a recurring failure in my automatic updates if I can figure out what to do with it. Any Suggestions welcome - Cheers
11
20693
by: Dick Moores | last post by:
Windows XP Pro, Python 2.5.1 import msvcrt while True: if msvcrt.kbhit(): key = msvcrt.getch() if key == 'Enter' do something Is there a way to catch the pressing of the 'Enter' key?
0
2760
by: Shadow of Socrates | last post by:
For AD Programing See below for Vista The error message &quot;A referral was returned from the server.&quot; means that the account, group, container or OU can not be found in the specified active directory path.
2
1632
by: =?Utf-8?B?TWlrZSBNaWtl?= | last post by:
Multiple problems I believe are related. First SqlDatasource in designer "Object reference not set to an instance of an object." I believe problems is caused by unable to read and bind the connectionString settings in the web.config file. Second, when trying to run the ASP.Net web site administration tool recieve the following error: An error was encountered. Please return to the previous page and try again. The following message...
0
1616
by: Daelm | last post by:
Hi, I having problems with a Vista Home Premium laptop, everytime I log on an error appears "Windows could not connect to the User Profile Service service. This problem prevents limited users from logging on to the system." I have checked the accounts and this is an administrator account. I also noticed that laptop harddisk runs for a while. I scanned the laptop with AnitVir and spyware program, but nothing was found. If you can give me a...
2
2097
Fary4u
by: Fary4u | last post by:
i just create application in vb6 which required msinet.ocx file to execute msinet.ocx based into system32 directory there is no problem to running application in windows xp but when i'm trying to run in vista it's giving me error "unexpected error" how can i fix this problem ?
0
8004
marktang
by: marktang | last post by:
ONU (Optical Network Unit) is one of the key components for providing high-speed Internet services. Its primary function is to act as an endpoint device located at the user's premises. However, people are often confused as to whether an ONU can Work As a Router. In this blog post, we’ll explore What is ONU, What Is Router, ONU & Router’s main usage, and What is the difference between ONU and Router. Let’s take a closer look ! Part I. Meaning of...
0
7934
by: Hystou | last post by:
Most computers default to English, but sometimes we require a different language, especially when relocating. Forgot to request a specific language before your computer shipped? No problem! You can effortlessly switch the default language on Windows 10 without reinstalling. I'll walk you through it. First, let's disable language synchronization. With a Microsoft account, language settings sync across devices. To prevent any complications,...
0
8425
Oralloy
by: Oralloy | last post by:
Hello folks, I am unable to find appropriate documentation on the type promotion of bit-fields when using the generalised comparison operator "<=>". The problem is that using the GNU compilers, it seems that the internal comparison operator "<=>" tries to promote arguments from unsigned to signed. This is as boiled down as I can make it. Here is my compilation command: g++-12 -std=c++20 -Wnarrowing bit_field.cpp Here is the code in...
0
8288
tracyyun
by: tracyyun | last post by:
Dear forum friends, With the development of smart home technology, a variety of wireless communication protocols have appeared on the market, such as Zigbee, Z-Wave, Wi-Fi, Bluetooth, etc. Each protocol has its own unique characteristics and advantages, but as a user who is planning to build a smart home system, I am a bit confused by the choice of these technologies. I'm particularly interested in Zigbee because I've heard it does some...
0
6743
agi2029
by: agi2029 | last post by:
Let's talk about the concept of autonomous AI software engineers and no-code agents. These AIs are designed to manage the entire lifecycle of a software development project—planning, coding, testing, and deployment—without human intervention. Imagine an AI that can take a project description, break it down, write the code, debug it, and then launch it, all on its own.... Now, this would greatly impact the work of software developers. The idea...
1
5886
isladogs
by: isladogs | last post by:
The next Access Europe User Group meeting will be on Wednesday 1 May 2024 starting at 18:00 UK time (6PM UTC+1) and finishing by 19:30 (7.30PM). In this session, we are pleased to welcome a new presenter, Adolph Dupré who will be discussing some powerful techniques for using class modules. He will explain when you may want to use classes instead of User Defined Types (UDT). For example, to manage the data in unbound forms. Adolph will...
0
5445
by: conductexam | last post by:
I have .net C# application in which I am extracting data from word file and save it in database particularly. To store word all data as it is I am converting the whole word file firstly in HTML and then checking html paragraph one by one. At the time of converting from word file to html my equations which are in the word document file was convert into image. Globals.ThisAddIn.Application.ActiveDocument.Select();...
0
3912
by: TSSRALBI | last post by:
Hello I'm a network technician in training and I need your help. I am currently learning how to create and manage the different types of VPNs and I have a question about LAN-to-LAN VPNs. The last exercise I practiced was to create a LAN-to-LAN VPN between two Pfsense firewalls, by using IPSEC protocols. I succeeded, with both firewalls in the same network. But I'm wondering if it's possible to do the same thing, with 2 Pfsense firewalls...
0
1271
bsmnconsultancy
by: bsmnconsultancy | last post by:
In today's digital era, a well-designed website is crucial for businesses looking to succeed. Whether you're a small business owner or a large corporation in Toronto, having a strong online presence can significantly impact your brand's success. BSMN Consultancy, a leader in Website Development in Toronto offers valuable insights into creating effective websites that not only look great but also perform exceptionally well. In this comprehensive...

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.